1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package com.google.common.collect;
18
19 import static com.google.common.base.Preconditions.checkNotNull;
20
21 import com.google.common.annotations.GwtCompatible;
22
23 import java.io.Serializable;
24
25
26 @GwtCompatible(serializable = true)
27 @SuppressWarnings("unchecked")
28 final class NaturalOrdering
29 extends Ordering<Comparable> implements Serializable {
30 static final NaturalOrdering INSTANCE = new NaturalOrdering();
31
32 @Override public int compare(Comparable left, Comparable right) {
33 checkNotNull(left);
34 checkNotNull(right);
35 return left.compareTo(right);
36 }
37
38 @Override public <S extends Comparable> Ordering<S> reverse() {
39 return (Ordering<S>) ReverseNaturalOrdering.INSTANCE;
40 }
41
42
43 private Object readResolve() {
44 return INSTANCE;
45 }
46
47 @Override public String toString() {
48 return "Ordering.natural()";
49 }
50
51 private NaturalOrdering() {}
52
53 private static final long serialVersionUID = 0;
54 }